package com.quxiu.system.domain;

import com.quxiu.system.domain.vo.UserScope;
import lombok.Data;

import java.util.List;
import java.util.Map;

@Data
public class BpmNodeConfig {
    /**
     * 处理人范围 1-指定人员 2-部门主管 3-连续多级主管 4-发起人自选
     */
    private Integer handlerScope;
    /**
     * 连续多级主管层级数
     */
    private Integer leaderHierarchyLimit;
    /**
     * 发起人自选类型 1-自选一个人 2-自选多个人
     */
    private Integer selfSelectionType;
    /**
     * 发起人自选范围 1-全公司 2-指定人员
     */
    private Integer selfSelectionScope;
    /**
     * 发起人自选项列表
     */
    private List<UserScope> selfSelectionItems;
    /**
     * 处理人列表
     */
    private List<UserScope> handlers;
    /**
     * 处理模式 1-依次审批（按顺序同意或拒绝） 2-会签（需要所有审批人都同意才可通过）3-或签（其中一名审批人同意或拒绝即可）
     */
    private Integer handleModel;
    /**
     * 审批人为空时 1-自动通过 2-自动转交管理员 3-指定人员审批
     */
    private Integer whenHandlerEmpty;
    /**
     * 审批人为空时指定人员审批列表
     */
    private List<UserScope> careOfUserList;
    /**
     * 条件列表
     */
    private List<List<BpmCondition>> conditions;
    /**
     * 权限
     */
    private Map<String, BpmPermission> permissions;
}
